package com.anyou.mall.pla.domain;

import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.EqualsAndHashCode;
import com.anyou.common.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import com.anyou.common.core.domain.BaseEntity;

import java.util.Date;
import java.util.List;

/**
 * 广告弹窗管理对象 pla_poster_info
 *
 * @author gaochaohao
 * @date 2022-03-18
 */
@Data
@NoArgsConstructor
@AllArgsConstructor
@EqualsAndHashCode(callSuper=false)
@ApiModel(value = "广告弹窗管理")
@TableName(value = "pla_poster_info")
public class PosterInfo extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 广告编号 */
    @TableId(type = IdType.AUTO)
    @ApiModelProperty("广告编号")
    private Long posterId;

    /** 广告名称 */
    @ApiModelProperty("广告名称")
    @Excel(name = "广告名称")
    private String posterName;

    /** 可看用户类型 */
    @ApiModelProperty("可看用户类型列表")
    private String visibleUserType;

    /** 所属栏目（0首页，1维修厂，2分类，3购物车，4我的） */
    @ApiModelProperty("所属栏目（0首页，1维修厂，2分类，3购物车，4我的）")
    @Excel(name = "所属栏目", readConverterExp = "0=首页，1维修厂，2分类，3购物车，4我的")
    private String posterType;

    /** 广告图 */
    @ApiModelProperty("广告图")
    @Excel(name = "广告图")
    private String posterUrl;


    /** 跳转类型（0外链，1商品，2汽配商，3维修厂，4无） */
    @ApiModelProperty("跳转类型（0外链，1商品，2汽配商，3维修厂，4无）")
    @Excel(name = "跳转类型", readConverterExp = "0=外链，1=商品，2=汽配商，3=维修厂，4=无")
    private String skipType;

    /** 广告图状态（0已启用，1已禁用） */
    @ApiModelProperty("广告图状态（0已启用，1已禁用）")
    @Excel(name = "广告图状态", readConverterExp = "0=已启用，1已禁用")
    private String posterStatus;

    /** 汽配商编号 */
    @ApiModelProperty("汽配商编号")
    @Excel(name = "汽配商编号")
    private Long carPartsShopId;

    /** 维修厂编号 */
    @ApiModelProperty("维修厂编号")
    @Excel(name = "维修厂编号")
    private Long repairFactoryId;

    /** 商品编号 */
    @ApiModelProperty("商品编号")
    @Excel(name = "商品编号")
    private Long goodsId;

    /** 外联地址 */
    @ApiModelProperty("外联地址")
    @Excel(name = "外联地址")
    private String linkUrl;

    /** 排序值 */
    @ApiModelProperty("排序值")
    private Long sortOrder;

    /** 创建时间 */
    @ApiModelProperty("创建时间")
    @JsonFormat(pattern = "yyyy-MM-dd hh:ss:mm",timezone = "GMT+8")
    private Date createTime;

    /** 删除标志（0代表存在 2代表删除） */
    @ApiModelProperty("删除标志（0代表存在 2代表删除）")
    private String delFlag;

    /** 可看用户类型 */
    @TableField(exist = false)
    @ApiModelProperty("可看用户类型列表")
    private List<VisibleUserTypeRelation> visibleUserTypeList;

}
